The content-addressable memory (CAM), also termed an associative memory, is a relatively new type of cell for computer architecture which can indicate whether an input word is or is not stored in the memory. Typically, the data is stored at random locations in the memory and is associated with a predetermined number of coded bits which indicate the nature of the data. Data retrieval is accomplished by applying the code to the memory.
CAM type memories also feature data retrieval on a search basis in cases where it is not known what data is stored in the memory. The code is applied in the Search (Interrogate) mode of operation to the memory and the memory responds with a Match or Mismatch answer. This is a powerful technique because the interrogator need not know how much or what kind of data relating to a particular subject is stored in the memory. Thus, the CAM concept is applicable to system control applications, signal processing, data base management, pattern recognition systems, and so forth.
A major problem in designing commercially acceptable CAM systems is the difficulty of achieving high Search speeds at reasonable power levels without disturbing the contents of the cell. In many CAM designs, the cell is very sensitive to input signal variations. Too high a Search signal will disturb the stored data; too low a signal will fail to generate a Match-Mismatch output. In these cases, the magnitude of the signals must be accurately controlled - a restriction that is often unachievable in commercially feasible, cost effective systems. Most prior art systems extract current from the storage cells during the Search mode; and an excess of current must be available both to maintain searching speed as well as to provide adequate margins against noise which would disturb the cell contents. This has resulted in very high power dissipation within the cell during the Search Mode.